Information processing apparatus, printing system, and control method therefor

ABSTRACT

The present invention realizes a network printing system capable of accumulating and chasing printed data. Further, by providing a job chasing function on the printer driver side, detailed setting can be done to extract history information of the job chasing function. The detailed setting to extract history information to chase a job can be done only by a specific administrator or user so that the job can be reliably chased, whereas the administrator or user can obtain desired history information. Accordingly, a precise jog chasing system can be established.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. patent application Ser. No.12/834,811, filed Jul. 12, 2010, which is a continuation of U.S. patentapplication Ser. No. 11/287,537, filed Nov. 23, 2005, now U.S. Pat. No.7,755,783, which claims the benefit of Japanese Application No.2004-338928, filed Nov. 24, 2004, all of which are hereby incorporatedby reference herein in their entirety.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates to an information processing apparatus andan information processing method. More specifically, the presentinvention relates to a system including an information processingapparatus such as a personal computer and a printing device such as aprinter, and to devices, a method, and a control program constitutingthe system.

2. Description of the Related Art

Owing to a recent progress in digitalization of information anddiffusion of network and mobile systems, users can access a large amountof information at one time and portability of the information hasdramatically improved. This trend will inevitably accelerate.

Hitherto, various methods for preventing leakage of information havebeen widely used. In one of them, for example, an access right is set inconfidential information or a storage server storing the information, soas to limit users who can access the confidential information.

In recent years, however, leakage of information has often been causedby a user who is permitted to access the confidential information.Therefore, leakage of information cannot be sufficiently prevented byonly setting an access right.

Also, countermeasures against leakage of information have been taken ina network printing system.

An example of the countermeasures is a method of setting printpermission information in a document to be printed or print data andreferring to the print permission information before performing printing(e.g., see Japanese Patent Laid-Open No. 2004-252784).

Another example is a method of storing print data in a print server suchthat the print data can be reprinted, and storing the print data as aprint log by adding a time stamp by obtaining a job name, a client name,and a user name, and by generating bitmap data based on the print data(e.g., see Japanese Patent Laid-Open No. 2002-149371).

Still another example is a method of obtaining a print log also on theprinter side and storing the print log in a server (e.g., see JapanesePatent Laid-Open No. 2003-330677).

Yet another example is a method in which a spooler in a print servertransmits intermediate data to be printed to a printer driver and to adatabase of a print log, or in which the printer driver receives theintermediate data to be printed from the spooler and transmits a PDL(page description language) to a printer and also transmits theintermediate data to the database for a print log (e.g., see JapanesePatent Laid-Open No. 2004-118243).

However, in these known arts, detailed settings or management of a printlog cannot be done in an information processing apparatus provided witha printer driver.

SUMMARY OF THE INVENTION

The present invention is directed to realizing a network printing systemcapable of storing and chasing printed data. Further, by providing a jobchasing function on the printer driver side, detailed setting can bedone to extract history information of the job chasing function. Thedetailed setting to extract history information to chase a job can bedone only by a specific administrator or user so that the job can bereliably chased, whereas the administrator or user can obtain desiredhistory information. Accordingly, a precise jog chasing system can beestablished.

According to a first aspect of the present invention, an informationprocessing apparatus includes an image processing unit for performingimage processing including generating print data; an extracting unit forextracting, from the print data generated by the image processing unit,history information with which the content of the print data can beidentified; an input unit for inputting control information to controlthe extracting unit; and a determining unit for determining whether auser has a right to input the control information to the input unit byusing identification information associated with the user. If thedetermining unit determines that the user has a right to input thecontrol information, the input unit permits input of the controlinformation.

According to a second aspect of the present invention, an informationprocessing method includes an image processing step of performing imageprocessing including generating print data; an extracting step ofextracting, from the print data generated in the image processing step,history information with which the content of the print data can beidentified; an input step of inputting control information to controlthe extracting step; and a determining step of determining whether auser has a right to input the control information in the input step byusing identification information associated with the user. If thedetermining step determines that the user has a right to input thecontrol information, the input step permits input of the controlinformation.

According to a third aspect of the present invention, a printing systemincludes an image processing unit configured to perform image processingincluding generating print data; an extracting unit configured toextract, from the print data generated by the image processing unit,history information with which the content of the print data can beidentified; an input unit configured to input control information tocontrol the extracting unit; and a determining unit configured todetermine whether a user has a right to input the control information tothe input unit by using identification information associated with theuser. If the determining unit determines that the user has a right toinput the control information, the input unit permits input of thecontrol information.

According to a fourth aspect of the present invention, a method forcontrolling a printing system includes an image processing step ofperforming image processing including generating print data; anextracting step of extracting, from the print data generated in theimage processing step, history information with which the content of theprint data can be identified; an input step of inputting controlinformation to control the extracting step; and a determining step ofdetermining whether a user has a right to input the control informationin the input step by using identification information associated withthe user. If the determining step determines that the user has a rightto input the control information, the input step permits input of thecontrol information.

According to a fifth aspect of the present invention, a printer drivermounted on an information processing apparatus connecting to a printingdevice through a communication medium is provided. The printer driverincludes a print data generating unit configured to generate print data;a chasing data generating unit configured to generate chasing data basedon the print data; and a chasing data setting unit configured to performsetting about generation of the chasing data to the chasing datagenerating unit.

According to a sixth aspect of the present invention, a method forcontrolling a printer driver mounted on an information processingapparatus connecting to a printing device through a communication mediumis provided. The method includes a print data generating step ofgenerating print data; a chasing data generating step of generatingchasing data based on the print data; and a chasing data setting step ofperforming setting about generation of the chasing data to the chasingdata generating step.

Other features of the present invention will be apparent from thefollowing description taken in conjunction with the accompanyingdrawings, in which like reference characters designate the same orsimilar parts throughout the figures thereof.

BRIEF DESCRIPTION OF THE DRAWINGS

The accompanying drawings, which are incorporated in and constitute apart of the specification, illustrate embodiments of the invention and,together with the description, serve to explain the principles of theinvention.

FIG. 1 is a block diagram showing the configuration of a printing systemaccording to an embodiment of the present invention.

FIG. 2 is a block diagram showing the configuration of a host computer3000 and a printer 1500 according to the embodiment of the presentinvention.

FIG. 3 shows an example of the configuration of a printing process andinformation chasing in the host computer 3000.

FIG. 4 shows another example of the configuration of the printingprocess and information chasing in the host computer 3000.

FIGS. 5A and 5B show examples of screens used to input controlinformation of a job chasing function.

FIG. 6 shows an example of the configuration of a job chasing systemaccording to the embodiment of the present invention.

FIG. 7 shows another example of the configuration of the job chasingsystem according to the embodiment of the present invention.

FIG. 8 shows another example of the configuration of the job chasingsystem according to the embodiment of the present invention.

FIG. 9 shows another example of the configuration of the job chasingsystem according to the embodiment of the present invention.

FIG. 10 shows another example of the configuration of the job chasingsystem according to the embodiment of the present invention.

FIG. 11 is a flowchart showing an example of an overall processaccording to the embodiment of the present invention.

FIG. 12 shows an example of controlling a right of a setting operationaccording to the embodiment of the present invention.

FIG. 13 shows the configuration of a first example of right controlaccording to the embodiment of the present invention.

FIG. 14 is a flowchart of the first example of right control accordingto the embodiment of the present invention.

FIG. 15 shows the configuration of a second example of right controlaccording to the embodiment of the present invention.

FIG. 16 is a flowchart of the second example of right control accordingto the embodiment of the present invention.

FIGS. 17A, 17B, and 17C are examples of user interfaces in the secondexample of right control according to the embodiment of the presentinvention.

FIG. 18 shows an example of chasing data used in the system shown inFIG. 4.

FIG. 19 shows another example of the chasing data used in the systemshown in FIG. 4.

FIG. 20 shows another example of the chasing data used in the systemshown in FIG. 4.

DESCRIPTION OF THE EMBODIMENT

An embodiment of the present invention will now be described in detailin accordance with the accompanying drawings.

The configuration of a chasing system is described. FIG. 1 is a blockdiagram showing an example of the configuration of a printing systemaccording to the embodiment of the present invention. The printingsystem includes a host computer 3000 connecting to a network 5000, aprinter 1500, a chasing information storage server 1000, and anadministrator client 4000.

The host computer 3000 receives a print request from a user, generatesprint data in accordance with the print request, and transmits the printdata to the printer 1500. Also, the host computer 3000extracts/generates chasing data that matches the print request andtransmits the chasing data to the chasing information storage server1000.

The printer 1500 performs a printing process in accordance with thereceived print data.

The chasing information storage server 1000 registers and stores thechasing data received from the host computer 3000 in a storage areaconstructed in the chasing information storage server 1000 or anotherinformation apparatus, so as to establish a database.

The administrator client 4000 is used by a system administrator tosearch for and browse chasing data that is registered in the database asnecessary.

The administrator client 4000 can be the same information apparatus asthe chasing information storage server 1000.

FIG. 2 is a block diagram showing the configuration of the host computer3000 and the printer 1500. As long as the function of the presentinvention can be performed, the form of the system is not material. Thatis, the system can be composed of a single apparatus or a plurality ofapparatuses. Further, the apparatuses can be connected through a networksuch as a local area network (LAN) or a wide area network (WAN) so as toexecute processes.

In FIG. 2, the host computer 3000 includes a central processing unit(CPU) 1. The CPU 1 controls execution of processes (described below)according to the embodiment of the present invention, e.g., a documentprocess of a document including figures, images, characters, and tables(including table calculation and the like) and a printing process basedon the document process, in accordance with a document processingprogram stored in a program ROM (read only memory) in a ROM 3 or anexternal memory 11. The CPU 1 also controls each device connecting to asystem bus 4. The program ROM in the ROM 3 or the external memory 11stores an operating system program (OS) functioning as a control programfor the CPU 1. Further, a font ROM in the ROM 3 or the external memory11 stores font data and the like used in the above-described documentprocess. Still further, a data ROM in the ROM 3 or the external memory11 stores various data used in the above-described document process. Arandom access memory (RAM) 2 functions as a main memory or a work areaof the CPU 1.

A keyboard controller (KBC) 5 controls key input from a keyboard (KB) 9or a pointing device (not shown). A cathode ray tube controller (CRTC) 6controls display in a CRT display (CRT) 10. A disk controller (DKC) 7controls an access to the external memory 11, such as a hard disk (HD)or a floppy disk (FD), storing a boot program, various applications,font data, a user file, an edit file, a printer control commandgenerating program (hereinafter referred to as a “printer driver”), andso on. A printer controller (PRTC) 8 connects to the printer 1500through a bidirectional interface (interface) 21 and controlscommunication with the printer 1500.

The CPU 1 opens various windows that are registered in advance based oncommands indicated by a mouse cursor (not shown) on the CRT 10, so as toexecute various data processes. When a user wants to perform printing,the user opens a print setting window and sets the printer and aprinting method, such as a printing mode, on the printer driver.

The printer 1500 is controlled by a CPU 12 provided therein. The printerCPU 12 outputs image signals as print output information to a printingunit (printer engine) 17 connected to a system bus 15 based on a controlprogram stored in a ROM 13 or a control program stored in an externalmemory 14.

A program ROM in the ROM 13 stores a control program for the CPU 12 andso on. A font ROM in the ROM 13 stores font data and so on used togenerate the above-mentioned print output information. A data ROM in theROM 13 stores information and so on used in the computer when theprinter does not have the external memory 14, such as a hard disk.

The CPU 12 can communicate with the host computer 3000 through an inputunit 18, and thus information in the printer 1500 can be transmitted tothe host computer 3000. A RAM 19 functions as a main memory or a workarea of the CPU 12 and the memory capacity thereof can be expanded byconnecting an optional RAM to an expansion port (not shown). The RAM 19is used as an output information expanding area, an environment datastoring area, a nonvolatile RAM (NVRAM), and the like.

An access to the above-described external memory 14, such as an HD or anIC card, is controlled by a memory controller (MC) 20. The externalmemory 14 is optionally connected and stores font data, an emulationprogram, form data, and so on. An operating unit 1501 includes a keyswitch used for an operation and a light emitting diode (LED) displaydevice.

The printer 1500 can also include an NVRAM (not shown) to store printermode setting information input through the operating unit 1501.

In this embodiment, the printing unit 17 functions as a printer engineusing an electrophotographic method. Therefore, print data is eventuallyrecorded on a medium such as paper by dots of toner. Of course, theprinting method used in the present invention is not limited to theelectrophotographic method. The present invention can be applied toprinting devices using any printing method that performs printing bycreating dots, e.g., an inkjet method.

Hereinafter, the configuration of a printing processing device and aninformation chasing device in the host computer 3000 is described withreference to FIG. 3.

FIG. 3 shows an example of the configuration for performing a printingprocess and information chasing in the host computer 3000 shown inFIG. 1. In FIG. 3, an application 201, a graphic engine 202, a printerdriver 203, and a system spooler 204 are stored in the external memory11 in the form of files, each functioning as a program module that isexecuted after being loaded into the RAM 2 by the OS or a module usingthe module.

The application 201 and the printer driver 203 can be added into the HDof the external memory 11 through the FD in the external memory 11, aCD-ROM (not shown), or a network (not shown). The application 201 storedin the external memory 11 is loaded into the RAM 2 and is then executed.However, when the application 201 requests a printing process to theprinter 1500, print data is output (rendered) by using the graphicengine 202 that has also been loaded into the RAM 2 and can be executed.

The graphic engine 202 loads the printer driver 203, which is providedfor each printing device such as a printer, from the external memory 11to the RAM 2, and sets an output from the application 201 to the printerdriver 203. Also, the graphic engine 202 converts a graphic deviceinterface (GDI) function received from the application 201 to a devicedriver interface (DDI) function and outputs the DDI function to theprinter driver 203. The printer driver 203 converts the output from theapplication 201 into a control command that can be recognized by theprinter 1500, e.g., into a page description language (PDL), based on theDDI function received from the graphic engine 202. The printer controlcommand generated in this way is output as print data to the printer1500 via the system spooler 204 loaded into the RAM 2 by the OS andthrough the interface 21.

Herein, the GDI function is rendering code data that can be interpretedon an OS (operating system) provided in the computer 3000 and is an API(application programming interface). The GDI function can be interpretedalso by the application 201. The DDI function is generated by conversionby the OS in the graphic engine 202 for the printer driver. As the OS,Windows® of Microsoft Corporation or the like can be used.

Further, in the printing system according to this embodiment, a jobchasing function unit 400 is provided in the printer driver 203. Eithera built-in module of the printer driver 203 or a library module added byindividual installation can be used as the job chasing function unit400.

The printer driver 203 extracts/generates chasing data by executing thejob chasing function unit 400 and transmits the chasing data to a jobchasing management unit 500.

The job chasing management unit 500 receives the chasing data andtransfers it to the chasing information storage server 1000.Incidentally, the job chasing management unit 500 can process or selectthe received chasing data as necessary. Further, the job chasingmanagement unit 500 can transmit the chasing data to the chasinginformation storage server 1000 upon receiving the chasing data.Alternatively, the job chasing management unit 500 can temporarily storethe chasing data in a storage area of the HD or the like, and thentransmit the chasing data to the chasing information storage server 1000in accordance with a specified transmission schedule.

FIG. 4 shows an expanded configuration of the system shown in FIG. 3. Inthis configuration, when print commands are transmitted from the graphicengine 202 to the printer driver 203, a spool file 303 includingintermediate code is generated by a spool system 300. In the systemshown in FIG. 3, the application 201 is released from a printing processafter the printer driver 203 has converted all print commands from thegraphic engine 202 to printer control commands. On the other hand, inthe system shown in FIG. 4, the application 201 is released from aprinting process after a spooler 302 has converted all print commandsinto intermediate code data and output the data to the spool file 303.In a usual case, the latter takes shorter time. Further, in the systemshown in FIG. 4, the content of the spool file 303 can be processed.Accordingly, the print data from the application 201 can be processed byusing a function that cannot be realized by the application 201, forexample, the print data can be scaled up/down or a plurality of pagescan be laid out in one page by scaling them down.

For these purposes, the system shown in FIG. 3 is expanded so that printdata can be spooled in the form of intermediate code data, as shown inFIG. 4. In order to process the print data, setting is done through a UIcontrol unit 203B provided in the printer driver 203, and the setting isstored in the RAM 2 or the external memory 11.

Hereinafter, the configuration shown in FIG. 4 is described in detail.As shown in the figure, in this expanded processing system, a DDIfunction as a print command from the graphic engine 202 is received by adispatcher 301. When the print command (DDI function) received by thedispatcher 301 from the graphic engine 202 is based on the print command(GDI function) that has been issued by the application 201 to thegraphic engine 202, the dispatcher 301 loads the spooler 302 that isstored in the external memory 11 into the RAM 2 and transmits the printcommand (DDI function) to the spooler 302.

The spooler 302 analyzes the received print command (DDI function),converts the print command to intermediate code in units of pages, andoutputs the intermediate code to the spool file 303. Also, the spooler302 obtains process settings (e.g., Nup, duplex, staple,color/monochrome) about the print data from the UI control unit 203B andstores the settings in the spool file 303 in the form of a file of eachjob. The spool file 303 is generated in the external memory 11 in theform of a file. Alternatively, the spool file 303 can be generated inthe RAM 2. Further, the spooler 302 loads a spool file manager 304stored in the external memory 11 into the RAM 2 and notifies the spoolfile manager 304 of a generating state of the spool file 303. Then, thespool file manager 304 determines whether a printing process can beperformed in accordance with the process settings of the print datastored in the spool file 303. The intermediate code stored in the spoolfile 303 is used only in the printer driver 203.

When the spool file manager 304 determines that the printing process canbe performed by using the graphic engine 202, the spool file manager 304loads a despooler 305 stored in the external memory 11 into the RAM 2and instructs the despooler 305 to perform a process of printing a pagerendering file of the intermediate code described in the spool file 303.

The despooler 305 processes the page rendering file of the intermediatecode contained in the spool file 303 in accordance with a job settingfile including process setting information included in the spool file303. Specifically, the despooler 305 reads the page rendering command ofthe intermediate code so as to regenerate the GDI function, and outputsthe GDI function through the graphic engine 202.

First, the despooler 305 ensures an area (device context) for bitmapexpansion in the RAM 2 and performs rendering in order to transmit arendering result based on the output GDI function to a job chasingfunction processing unit 402. The generated chasing information isconverted to a format that can be read by the job chasing managementunit 500 by the job chasing function processing unit 402 and istransferred thereto. The converting method used here can be ahighly-compatible method, such as an XML (Extensible Markup Language)method, or can be a method according to a unique specification.

Then, the despooler 305 outputs the GDI function to the dispatcher 301via the graphic engine 202.

When the print command (DDI function) received from the graphic engine202 is based on the print command (GDI function) that was issued by thedespooler 305 to the graphic engine 202, the dispatcher 301 transmitsthe print command to a rendering unit 203C, not to the spooler 302.

The rendering unit 203C generates a printer control command described ina page description language or the like based on the DDI functionobtained from the graphic engine 202 and outputs the printer controlcommand to the printer 1500 through the system spooler 204.

The configuration of the printing processing device and the informationchasing device in the host computer 3000 has been described above.

Hereinafter, examples of the system configuration are described. Sincethe placement of a system setting operating unit is independent from itsauthority, a network printing system in which a connection path has ahigh degree of freedom can be provided. FIG. 6 illustrates variousoperation forms of this invention. At the same time, FIG. 6 shows anexample of the simplest operation of this invention. That is, the jobchasing management unit 500 is provided in the host computer 3000, printdata is directly transmitted from the printer driver 203 to the printer1500, and chasing data is transmitted from the job chasing function unit400 to the chasing information storage server 1000 through the jobchasing management unit 500 in the host computer 3000. Thisconfiguration is the minimum to realize the present invention. In thefollowing description, this configuration is adopted unless otherwisespecified.

In FIG. 7, unlike in FIG. 6, the job chasing management unit 500 isprovided in a chasing management computer 6000 that is separated fromthe host computer 3000. In this configuration, print data is directlytransmitted from the printer driver 203 to the printer 1500 as in FIG.6, and chasing data is transmitted from the job chasing function unit400 to the chasing information storage server 1000 through the jobchasing management unit 500 in the chasing management computer 6000.With this configuration, the chasing information storage server 1000 forstoring chasing data can be scheduled on a day or in a time slot whenthe network load becomes light, so that the load on the chasinginformation storage server 1000 can be controlled.

The configuration shown in FIG. 8 is different from that in FIG. 6 inthat a print server 7000 is provided between the host computer 3000 andthe printer 1500. In this configuration, print data is transmitted fromthe printer driver 203 to the printer 1500 through a correspondingprinter queue (print spooler) of the print server 7000, and chasing datais transmitted from the job chasing function unit 400 to the chasinginformation storage server 1000 through the job chasing management unit500 in the host computer 3000, as in FIG. 6. With this configuration, anoperation method using the print server 7000 can be realized. Further,by providing the printer driver 203 in the print server 7000, theprinter driver can be distributed to the host computer 3000,synchronization can be performed, and setting information can be shared.Further, various settings relating to a job chasing function can becollectively managed in the print server 7000, so as to prevent a userwho does not have a right to perform various settings of the job chasingfunction from changing the settings.

The configuration shown in FIG. 9 is a combination of the configurationsshown in FIGS. 7 and 8. That is, the print server 7000 is providedbetween the host computer 3000 and the printer 1500, and the job chasingmanagement unit 500 is provided in the chasing management computer 6000separated from the host computer 3000. In this configuration, print datais transferred from the printer driver 203 to the printer 1500 through acorresponding printer queue (print spooler) of the print server 7000, asin FIG. 8. On the other hand, chasing data is transmitted from the jobchasing function unit 400 to the chasing information storage server 1000through the job chasing management unit 500 in the chasing managementcomputer 600, as in FIG. 7. With this configuration, advantages of theconfigurations shown in FIGS. 7 and 8 can be obtained at the same time.

Referring to FIG. 10, the chasing management computer 6000 and the printserver 7000 shown in FIG. 9 are combined into a print server/chasingmanagement computer 8000. In this configuration, print data istransferred from the printer driver 203 to the printer 1500 through acorresponding printer queue (print spooler) of the print server/chasingmanagement computer 8000, and chasing data is transmitted from the jobchasing function unit 400 to the chasing information storage server 1000through the job chasing management unit 500 in the print server/chasingmanagement computer 8000. With this configuration, the chasingmanagement computer 6000 and the print server 7000, which are separatedin FIG. 9, can be combined into the print server/chasing managementcomputer 8000. Accordingly, the installation space and cost can bereduced.

Now, a job chasing printing process is described.

FIG. 11 is a flowchart showing the entire process of the job chasingfunction. The process of the job chasing function is described below byusing this flowchart.

After a print job has started, the printer driver 203 receives arendering command (DDI command) from the GDI in step S701. Then, in stepS702, the printer driver 203 and the job chasing function unit 400collect or generate chasing data corresponding to the received renderingcommand, and transfer the chasing data to the job chasing managementunit 500.

According to the above description about FIG. 4, the GDI function isconverted to the DDI function and is temporarily stored as intermediatecode in the spool file 303. Then, the graphic engine 202 regenerates theGDI function based on the intermediate code and transmits the GDIfunction to the jog chasing management unit 500.

More specifically, chasing data is collected or generated by executing aprocess depending on a received rendering command or various settingsset on the job chasing function unit 400 and then the chasing data istransferred to the job chasing management unit 500. For example, whenthe received rendering command is a print start command, attributeinformation about the job or information about an environment where theprinting is performed is collected or generated as chasing data. Whenthe received rendering command is a page start command, attributeinformation about the page is collected or generated as chasing data.Further, when the job chasing function unit 400 is instructed to extracttext information, character string information is extracted from a textrendering command so as to collect or generate chasing data. Wheninstructions to extract image information have been provided, the imageinformation is rendered as a bitmap image in a memory area where eachrendering command is ensured.

After the chasing data has been collected, generated, and transferred inthe above-described manner, the process proceeds to step S703 whereprint data (control command that can be recognized by the printer 1500)corresponding to the rendering command received in step S701 isgenerated. The generated print data is written into the system spooler204 and is then transferred to the printer 1500.

According to the above description about FIG. 4, the intermediate codethat is temporarily stored in the spool file 303 is converted to a GDIfunction by the graphic engine 202. Then, the GDI function istransmitted to the rendering unit 203C through the dispatcher 301.

In this way, the steps of receiving a rendering command (S701),generating and transferring chasing data (S702), and generating andtransferring print data (S703) are repeated until a job end command isissued (S704).

A job chasing function UI is described next. FIGS. 5A and 5B showexamples of a user interface to perform settings about job chasing. FIG.5A shows an example of an initial screen of the user interface forchasing, the screen being placed in an add-in UI control unit 401 of theprinter driver 203. In this example, setting about chasing can be donein a property sheet “Job chasing function” in a dialog 510. FIG. 5Bshows a screen on which an administrator performs setting through a UI1135 of a job chasing management unit 1130 (see FIG. 13). Additionally,screens shown in FIGS. 17A, 17B, and 17C are displayed when they arecalled by a UI 1345 of a job chasing function unit 1340 (see FIG. 15).

Considering the operation purpose of this system, the dialog 510 shouldbe displayed to only a user who is permitted to change the setting of atarget printer. Control of displaying this dialog and limiting a user'sright of execution will be described later.

Referring to FIG. 5A, a check box 511 “Perform job chasing” is used toselect enable or disable of the job chasing function. The user cancontrol ON and OFF of this function by operating this check box. Whenthe check box 511 in FIG. 5A is clicked, a command indicating ON or OFFis input to the job chasing function UI control unit 401 shown in FIG.4, and the job chasing function processing unit 402 is controlledaccording to the input command. When a command “OFF” is input, the jobchasing function processing unit 402 does not start the job chasingfunction and keeps the job chasing function stopped.

A dialog 520 shown in FIG. 5B used for performing detailed settings ofthe job chasing function opens when a setting button 512 shown in FIG.5A is selected. In this job chasing setting dialog 520, informationabout the destination of chasing data and the content of the chasingdata generated by the job chasing function processing unit 402 aremainly set.

An identification name of a computer in which the job chasing managementunit 500 operates is input to a box 521, “Name of management client” (inthis embodiment, “Server A”, which is the name of a computer includingthe job chasing management unit 500). A key for distinguishing fromanother connection in the job chasing management unit 500 is input to abox 522, “Identification name”. Further, a timeout value used incommunication with the job chasing management unit 500 is set in advancein a box 523, “Timeout value”. The above three items are informationused to transmit chasing data. By setting an OK button after performingthe setting on this screen, the setting is stored in a setting 1131 thatis managed by the job chasing management unit. The job chasingmanagement unit controls the job chasing function unit by using thesetting 1131 so as to perform a process for chasing recording of a printhistory and print data generated by the driver.

When the job chasing management unit 500 operates in the computer thatdisplays this user interface, the identification name of the computer isinput in the box 521 “Name of management client”. When the job chasingmanagement unit 500 operates in another computer, the identificationname of the computer in which the job chasing management unit 500operates is input to the box 521.

A check box 524 “Extract text” is used to specify whether text characterstring information should be included in chasing data. By checking thischeck box 524, the printer driver 203 extracts text character stringinformation as chasing data by cooperating with the job chasing functionunit. By adding the text character string information to the chasingdata, text search can be easily performed after the chasing data hasbeen stored in the chasing information storage server 1000.

A check box 525 “Extract image” is used to specify whether page bitmapinformation should be included in chasing data. By checking this checkbox 525, the printer driver 203 generates page bitmap information inaddition to print data by cooperating with the job chasing functionunit. Then, by using a file server on a network as the chasinginformation storage server 1000, the chasing data can be registeredthrough a network interface. By adding the page bitmap information tothe chasing data, images can be browsed after being stored in thechasing information storage server 1000.

Further, by using a box 526 “Number of bits (color)”, a box 527 “Numberof bits (monochrome), a box 528 “Resolution”, a box 529 “Compressionmethod”, and a box 530 “Encoding method”, the attribute and format of apage image to be generated can be specifically set.

The job chasing function UI and right control are described next. FIG.12 is a conceptual view of controlling a right of a setting operation.Considering the operation purpose of this system, the operating unit ofthis network printing system should be displayed to only a user who ispermitted to change settings. In a system setting 1030, an administrator1080 can access data and its operating unit. However, a user 1090 cannotaccess the system setting 1030 and cannot operate the operating unit.

In order to realize this external specification, the following method isadopted. Firstly, the job chasing function unit and the job chasingmanagement unit are separated from each other. Secondly, the job chasingfunction unit and the job chasing management unit can be placed indifferent PCs (or can be placed in the same PC). Thirdly, when a rightto access the job chasing management unit is given, setting andoperation can be done and a UI is displayed. Fourthly, when the accessright is not given, neither setting nor operation can be done and a UIis not displayed (an unoperatable state can be indicated by graying outthe job chasing UI). Fifthly, an access right control function of the OSor an authenticating function of the network printing system is used todetermine the right.

Hereinafter, the above-described method is described in detail. FIG. 13shows a first example of the configuration to control the right. Herein,in an environment where each computer is managed by an existing accesscontrol list (ACL), which is a function of an OS, an administratorperforms system setting so as to change the function of each client.

The ACL is a data listing of access rights of respective network usersand accessible resources including servers and files. The ACL isinstalled in order to collectively manage devices on the network andrights to use information.

The OS determines an access right of a user to use various networkresources by referring to the ACL. This function is provided in atypical OS, for example, Windows® 2000/XP of Microsoft Corporation.

In the configuration shown in FIG. 13, there is provided a storageserver 1110 serving as a database for storing an extraction result 1111of the network system, and its front end, that is, a chasing informationmanagement server 1120. Between the chasing information managementserver 1120 and a job chasing function unit 1140 serving as anextracting unit, the job chasing management unit 1130 having the setting1131 and the operation UI 1135 is placed. Basically, the storage server1110 and the management server 1120 should be mounted on differentapparatuses. Also, the job chasing management unit 1130 and the jobchasing function unit 1140 should be mounted on different apparatuses.However, those respective functions can be combined together so as to bemounted on a single apparatus (e.g., a PC or a work station having thesame configuration as that of the host computer 3000 in FIG. 2). Asetting 1121 of the chasing information management server 1120 istransmitted to the job chasing management unit 1130. This setting 1 ismanaged as the setting 1131 together with settings 2 and 3 of the jobchasing management unit 1130 and the job chasing function unit 1140.When an administrator A 1180 wants to change the setting 1131 throughthe job chasing management unit 1130, the job chasing management unit1130 refers to the ACL. When the administrator A has a setting right,the operating unit (UI) 1135 is displayed, where the administrator A canchange the setting 1131. The screens shown in FIGS. 5A and 5B aredisplayed in the operating unit 1135, in which the user can performsettings. Then, each set value is stored as the setting 1131.

This setting 1131 includes an operation setting of the job chasingfunction unit and the driver 1140. The job chasing management unit 1130operates the job chasing function unit and the driver 1140 in accordancewith the setting 1131. The stored setting is as described above withreference to FIGS. 5A and 5B. Based on the stored setting 1131, the jobchasing management unit 1130 controls the driver 1140 through the jobchasing function unit.

When an ACL 1142 determines that a user 1190 using the client where thejob chasing function unit and the driver 1140 operate does not have asetting right, the user 1190 cannot access an operating unit (UI) 1145.

FIG. 14 is a flowchart of the process performed by the job chasingmanagement unit 1130 in the first example of access control.

First, the job chasing management unit 1130 starts to obtain settingfrom an upper layer in step S1220. The job chasing management unit 1130obtains the setting 1 in step S1221.

Then, the job chasing management unit 1130 starts a setting operation instep S1230. Specifically, in step S1231, the job chasing management unit1130 checks the ACL (access control list: access right) of a user whochanges the setting. If the user has an access right, the processproceeds to step S1232 where the job chasing management unit 1130determines whether the setting should be changed. When the settingshould be changed, the process proceeds to step S1235 where the settingUI is opened. Then, the setting is changed in step S1236 and the changedsetting is stored in step S1237.

After that, change in setting of the driver is started in step S1240.The setting items required to the driver are merged in step S1241, andthe setting of the driver is changed in step S1242.

FIG. 15 shows the configuration of a second example of the rightcontrol. In this example, an administrator changes the system settingfrom the client side by using the authenticating function of thisnetwork printing system. The configuration of the upper layer of thisnetwork system is the same as that shown in FIG. 13. Therefore, only adifferent part is shown in FIG. 15.

When an administrator A 1380 wants to change a setting 1331 from theclient side, the administrator is authenticated by a job chasingmanagement unit 1330. The job chasing management unit 1330 checks anACL, and if the administrator A has an access right, the job chasingmanagement unit 1330 provides a certificate 1342 of the administrator Ato the client side. When this certificate 1342 is issued, an operatingunit (UI) 1345 is displayed, so that the setting 1331 in the job chasingmanagement unit 1330 can be changed.

FIG. 16 is a flowchart of the second example of the right control. Whenthe job chasing management unit 1330 determines that a client UI existsand a login button is displayed therein (step S1410), the job chasingmanagement unit 1330 opens a login UI 1512 shown in FIG. 17 and displaysit through the job chasing function unit 1340 of the client (stepS1411). On the other hand, when the job chasing management unit 1330determines in step S1410 that the client UI is set to undisplayed, theprocess skips to step S1420, and authentication and distribution of thecertificate are performed.

The job chasing management unit 1330 starts authentication in step S1420in accordance with the name of an administrator and a passwordtransmitted from the client. In step S1421, it is determined whether anadministrator A corresponding to the user name and password transmittedfrom the client has a right to set the job chasing management unit 1330.If the administrator A has a setting right, the process proceeds to stepS1422 where authentication is performed. Then, in step S1423, acertificate of the administrator A is transmitted from the job chasingmanagement unit 1330 to the client machine.

Then, in step S1430, the job chasing management unit 1330 starts asetting operation. In step S1431, the job chasing management unit 1330determines whether the administrator A has a certificate. When it isdetermined that the administrator A has a certificate, the processproceeds to step S1435 where a setting UI is opened. The setting ischanged in step S1436 and the changed setting is stored in step S1437.Then, change in setting of the driver starts in step S1440. Settingitems required to the driver are merged in step S1441, and the setting1331 of the driver is changed in step S1442.

FIGS. 17A, 17B, and 17C show examples of a UI used for controlling aright displayed in the UI 1345 shown in FIG. 15. When the client UIexists and the login button is displayed, the job chasing managementunit 1330 transmits a command to open a login UI and display the loginUI in the UI 1345 on the client side. On a screen 1511 displayed in theUI 1345, the user specifies a name of another server including the jobchasing function management unit through the job chasing function unit1340. Then, the user inputs necessary information for authentication ona screen 1512 and puts an enter button.

Accordingly, the authentication information is transferred to the jobchasing management unit. If authentication has been successfully done, asetting UI 1536 can be opened from the client side. The operatingspecification of the user interface 1536 is the same as that in FIG. 5B.In this UI, the name of a remote server can be specified. When theserver determines that a transmitter of a display request is a chasinginformation management server, the server locally displays the screenshown in FIG. 5B on the chasing information management server side. Whenthe server determines that the transmitter of the display request is aclient having a job chasing function unit, the server controls theclient apparatus so as to display the screens shown in FIGS. 17A, 17B,and 17C.

After an OK button on the screen 1536 has been pressed, values inputthrough the screen 1536 displayed on the UI 1345 (settings that can beinput are the same as those in FIG. 5B) are transferred through the jobchasing function unit 1340 to the job chasing management unit 1330.

The job chasing management unit 1330 stores the transferred settings. Atthis time, if the settings include an already stored setting 1311, thesettings are merged. Based on this information, the job chasingmanagement unit 1330 controls the job chasing function unit 1340 so asto chase data generated by the driver, as described above.

As described above, the host computer 3000 includes the printer driver203 for generating print data, such as PDL data or image data; the jobchasing function unit 400 for extracting text data or thumbnail data,serving as history information based on which the content of print datacan be identified, from the generated print data; and the job chasingmanagement unit 500 for inputting control information to control the jobchasing function unit 400.

The job chasing management unit 500 determines whether a user has aright to input control information (e.g., information to be input fromthe UI displayed on the screen shown in FIG. 5B or the screen 1536 shownin FIG. 17C) to the job chasing management unit 500 by usingidentification information associated with the user who providesinstructions to control the function of the job chasing function unit.When the job chasing management unit 500 determines that the user has aright to input the control information, the job chasing management unit500 permits the user to input the control information.

By using the control information, the job chasing management unit 500controls the job chasing function unit 400.

Alternatively, the control information can include input instructions toswitch whether or not the extracting unit extracts the historyinformation.

Also, the control information can include an input of instructing theextracting unit to extract at least one of image data and text data sothat the content of the print data can be identified. Further, thecontrol information can include a command to specify at least one of thequality of an image extracted by the job chasing function unit,resolution, and a compression method used to store extracted data.

The job chasing management unit 500 determines whether a user performingan operation has a right to input control information by using a username obtained through the operating system or the printer driver.Additionally, the control information can include information indicatinga place to store history information (e.g., the host name or IP addressof the chasing information storage server 1000), or timeout informationindicating the time to give up storage of history information after astorage destination does not respond for a predetermined time period.The job chasing function unit 400 can extract text data or thumbnaildata with which a user can identify the content to be printed from thePDL data or image data generated by the printer driver. Then, the jobchasing function unit 400 can store the extracted data as historyinformation in a memory in the information processing apparatus (amemory ensured by the job chasing function unit 400 in the host computer3000) or the chasing information storage server 1000 that can beaccessed through the host computer and the network.

Now, the chasing data is described in detail. Herein, the chasing dataextracted by the job chasing function unit 400 according to theembodiment of the present invention is described. The chasing data isgenerated in step S702 in FIG. 11. The chasing data is extracted whilebeing classified into the following four categories: (1) informationabout a printer to output data and its attribute; (2) information aboutan information apparatus such as a computer that performed printing andits user; (3) various attribute information and statistical informationabout a print job; and (4) information about respective pages in a printjob. Hereinafter, each type of information is described.

First, information about a printer to output print data and itsattribute is described. FIG. 18 shows an example of information (printerinformation 800) about a printer to output print data and its attribute.This information depends on a printer to output print data, and thus canbe generated at timing of processing a command that occurs at least oncein each job in step S702 in FIG. 11, for example, when a job startcommand is issued.

“ServerName” 801 is used when a printer to output print data performsprinting via a print server and indicates the name of the print server.

“PrinterName” 802 indicates a name to specify a target printer in theclient PC.

“ShareName” 803 indicates a share name that is set by an administratorso that another client PC can refer to it in the print server. This itemis not used when the print server is not used.

“PortName” 804 indicates the name of a port to which the target printeris connected. For example, when an LPR connection is used, a standardname is based on an IP address, and thus a device at an outputdestination can be specified.

“DriverName” 805 indicates the name of a printer driver used to outputdata to the target printer. This name is unique to the driver and cannotbe changed by a user, unlike the “PrinterName” 802. Therefore, an outputtarget device can be specified.

“Comment” 806 and “Location” 807 are character string information thatcan be applied from an administrator of a client and a server to theprinter driver. When printing is performed through the print server,chasing thereafter can be easily performed if the administrator inputsinformation for easily specifying a printer in this field.

Next, information about an information apparatus such as a computer thatperformed printing and about the user is described. The lower part ofFIG. 18 shows an example of information about an information apparatussuch as a computer that performed printing and about the user(environment and user information 810). This information depends on anenvironment where printing is performed and the user, and thus can begenerated at a command processing timing that occurs at least onceduring a print job, as the above-described printer information 800.

“ComputerName” 811 indicates the name of a computer that output a printinstruction. “IPAddress” 812 indicates a network address included in thecomputer that output the print instruction. “MACAddress” 813 is anidentification symbol unique to a network adaptor included in thecomputer.

Based on these pieces of information, an information apparatus that hasoutput a print instruction can be specified.

“UserName” 814 indicates an identification name of a user who uses thecomputer that output the print instruction. Based on this information,the user who provided the print instruction is specified.

Next, various attribute information and statistical information about aprint job are described. FIG. 19 shows an example of the variousattribute information and statistical information about a print job (jobinformation 820). This information is unique to a print job, and thuscan be generated at a command processing timing that occurs at leastonce during a print job, as the above-described printer information 800and the environment and user information 810.

“PrintModuleName” 821 indicates the name of a module executing anapplication executing a printing process. Since the job chasing functionunit 400 operates as a part of the printer driver 203, the name of amodule executing a printing execution application can be obtained. Thisinformation specifies an application in which the printing wasperformed.

“JobName” 822 indicates the name of a print job that is applied from aprinting application to the print job.

“Output” 823 indicates an output destination that is individuallyspecified by the printing application. This information is not used whenthe printing application does not specify an output destination of ajob.

“LocalStartTime” 824 and “UTCStartTime” 825 indicate date and time whenprinting starts. “LocalStartTime” 824 indicates date and time in a localcomputer, whereas “UTCStartTime” 825 indicates the start timerepresented by a coordinated universal time incorporating a locale seton the local computer. By indicating the date and time in two ways, thedate and time of printing can be uniformly obtained regardless of thelocale set in the target computer.

The above-described pieces of information 821 to 825 are fixed at startof printing, and thus can be processed when a print starting command isexecuted.

“LogicalPageNum” 831 indicates the number of logical pages. The logicalpage means each page that is laid out in one physical page when anN-inOne printing is performed. This information can be obtained bycounting the number of switching commands or switching controls oflogical pages during a job.

“PhysicalPageNum” 832 indicates the number of physical pages. Thephysical page means, for example, each side of sheet of paper in duplexprinting. This information can be obtained by counting the number ofpage end commands during a job.

“PaperNum” 833 indicates the number of physical sheets of paper used inprinting. By monitoring the count of the “PhysicalPageNum” 832 andtransition between duplex and one-sided printing modes during a printjob, the number of physical sheets to be output can be obtained.

“Copies” 834 indicates the number of copies to be printed specified in aprint job and can be obtained by monitoring a number of copiesspecifying command included in the print job. When the driver 203replays each page to support printing of multiple copies in order toreduce the size of chasing data, only part of data can be extracted.

“EndState” 835 indicates a job end state. This information indicatesthat the job was normally ended or a user requested a pause of printing.When the user requested a pause of printing, the number of pagesgenerated by the driver 203 does not necessarily match the number ofpages that were actually output. Therefore, when the “EndState” 835indicates a pause, that indicates a possibility that the above-describedphenomenon occurred.

The above-described pieces of information 831 to 835 include statisticalinformation that is fixed when a print job ends, and thus are processedwhen a print job end command is issued.

Next, information about the content of each page in a print job isdescribed. FIG. 20 shows an example of information (page information)about the content of each page in a print job. In this example, the pageinformation is roughly classified into page attribute information 840,text information 850, and image information 860. The page attributeinformation 840 is information describing attributes of a target page,the text information 850 is text information included in the page, andthe image information 860 is extracted page image information.Hereinafter, each of them is described.

“PageName” 841 is information indicating the name of paper of a targetpage. “Orientation” 842 indicates the orientation of the page, that is,either portrait or landscape.

“PageWidth” 843 and “PageHeight” 844 indicate the size of paper.

“DuplexMode” 845 indicates whether the page is printed in a duplex modeor a one-sided mode.

“ColorMode” 846 indicates whether the page is printed in a color mode ora monochrome mode. “Layout” 847 indicates the layout mode of the page,such as Nup printing or poster printing.

“PrintResolution” 848 indicates the printing resolution of the page.

“OverlayMode” 849 indicates an overlay operation mode, such as a normalprinting mode, an overlay printing mode, or an overlay registrationmode. In the overlay printing mode, a target job added with an overlayis actually printed. In the registration mode, printing is not performedonly by the target job. This information is collected to indicate theseconditions.

“CodePage” 851 indicates code page information of character codedescribed in “Text” 852. The code page information is used to, forexample, convert a unicode of two bytes to a double byte character set(DBCS).

“Text” 852 stores character code information supplied by a textrendering command included in the page. The “Text” 852 is extractedevery time a text rendering command is issued.

The text information 850 is chasing information that is extracted whenthe check box 524 “Extract text” shown in FIG. 5B is checked.

“ImageWidth” 861 and “ImageHeight” 862 indicate the size of an extractedpage image by the number of pixels.

“ImageResolution” 863 indicates the resolution of an extracted pageimage and corresponds to the value indicated in the resolution 528 shownin FIG. 5B.

“BitsPerComponent” 864 indicates the gradation of an extracted pageimage and corresponds to the value specified in “the number of bits(color)” 526 and “the number of bits (monochrome)” 527 shown in FIG. 5B.

“Format” 865 indicates the format of an extracted page image.

“ImageBits” 866 indicates the substance of an actually extracted pageimage, and is generated by writing a rendering image into a bitmap areaof the page image every time a rendering command is processed.

The pieces of information 861 to 866 relating to an extracted page imageare extracted when the check box 525 “Extract image” shown in FIG. 5B ischecked.

The display format of the above-described information that is extractedor generated as chasing data can be described in an extensible markuplanguage (XML).

Examples of the chasing data have been cited in the above-describedembodiment.

The chasing data (including image thumbnails and text data extractedfrom data generated in accordance with a printing process) can beobtained by the job chasing function processing unit 402 through thedespooler 305 shown in FIG. 4, and the chasing data can be transferredto the chasing information storage server 1000 through the job chasingmanagement unit 500 and the network, so that an administrator or aspecific user can browse the chasing information from another client(not shown) through a viewer or a browser.

The present invention can be applied to a system composed of a pluralityof apparatuses (e.g., a computer, an interface apparatus, a reader, anda printer) or a single apparatus (e.g., a copying machine, a printer, ora facsimile). The present invention can be carried out when a computer(or CPU or MPU) of the system or apparatus reads and executes programcode that realizes the procedure of the flowchart described in theabove-described embodiment and that is stored in the storage medium.

In this case, the program code read from the storage medium realizes thefunctions of the above-described embodiment. Therefore, the storagemedium storing the program code is included in the present invention.

Examples of the storage medium to supply the program code include afloppy disk, a hard disk, an optical disk, a magneto-optical disk, acompact disk read only memory (CD-ROM), a compact disk recordable(CD-R), a magnetic tape, a nonvolatile memory card, and a read onlymemory (ROM).

The functions of the above-described embodiment are realized when thecomputer reads and executes the program code. Alternatively, thefunctions of the above-described embodiment can be realized when anoperating system (OS) operating in the computer executes part or all ofactual processing in accordance with the instructions of the programcode.

Further, after the program code read from the storage medium has beenwritten into a memory of a function expanding board inserted to thecomputer or a function expanding unit connected to the computer, a CPUor the like provided in the function expanding board or the functionexpanding unit can execute part or all of actual processing inaccordance with the instructions of the program code.

While the present invention has been described with reference to anexemplary embodiment, it is to be understood that the invention is notlimited to the disclosed exemplary embodiment. The scope of thefollowing claims is to be accorded the broadest interpretation so as toencompass all modifications, equivalent structures and functions.

1. A printing system including a printing apparatus and a managementserver connected to an information processing apparatus via acommunication medium, wherein the information processing apparatuscomprises: a print data transmission unit that transmits print data tothe printing apparatus; an extraction unit that extracts image datacorresponding to the transmitted print data; and a generating unit thatgenerates data for chasing from the extracted image data, wherein themanagement server comprises: a setting unit that sets settinginformation to instruct a method of generating data for identifyingcontent of the print data as the data for chasing, and wherein thegenerating unit generates the data for chasing based on the settinginformation set by the setting unit.
 2. The printing system according toclaim 1, wherein the setting information includes, as the method,information of at least one of the number of bits of the image data tobe extracted, resolution and a compressing method.
 3. The printingsystem according to claim 1, wherein the data for chasing generated bythe generating unit is smaller in size than the print data correspondingto the data for chasing.
 4. An information processing apparatus capableof communicating with a printing apparatus and a management server, theinformation processing apparatus comprising: a print data transmissionunit that transmits print data to be printed by the printing apparatusto the printing apparatus; an extraction unit that extracts image datacorresponding to the transmitted print data; a generating unit thatgenerates, from the extracted image data, data for chasing; and atransmission unit that transmits the data for chasing to the managementserver, wherein the generating unit generates the data for chasing basedon setting information to instruct a method of generating data foridentifying content of the print data as the data for chasing.
 5. Theinformation processing apparatus according to claim 4, wherein thesetting information includes, as the method, information of at least oneof the number of bits of the image data to be extracted, resolution anda compressing method.
 6. The information processing apparatus accordingto claim 4, wherein the data for chasing generated by the generatingunit is smaller in size than the print data corresponding to the datafor chasing.
 7. A method for use in a printing system including aprinting apparatus and a management server connected to an informationprocessing apparatus via a communication medium, the method comprising:transmitting print data to the printing apparatus, wherein theinformation processing apparatus transmits the print data; extractingimage data corresponding to the transmitted print data, wherein theinformation processing apparatus extracts the image data; generatingdata for chasing from the extracted image data, wherein the informationprocessing apparatus generates the data for chasing; and setting settinginformation to instruct a method of generating data for identifyingcontent of the print data as the data for chasing, wherein themanagement server sets the setting information, wherein the generatingstep comprises generating the data for chasing based on the settinginformation set in the setting step.
 8. The method according to claim 7,wherein the setting information includes, as the method, information ofat least one of the number of bits of the image data to be extracted,resolution and a compressing method.
 9. The method according to claim 7,wherein the data for chasing generated in the generating step is smallerin size than the print data corresponding to the data for chasing.
 10. Amethod for use in an information processing apparatus capable ofcommunicating with a printing apparatus and a management server, themethod comprising: transmitting print data to be printed by the printingapparatus to the printing apparatus; extracting image data correspondingto the transmitted print data; generating, from the extracted imagedata, data for chasing; and transmitting the data for chasing to themanagement server, wherein the generating step comprises generating thedata for chasing based on setting information to instruct a method ofgenerating data for identifying content of the print data as the datafor chasing.
 11. The method according to claim 10, wherein the settinginformation includes, as the method, information of at least one of thenumber of bits of the image data to be extracted, resolution and acompressing method.
 12. The method according to claim 10, wherein thedata for chasing generated in the generating step is smaller in sizethan the print data corresponding to the data for chasing.
 13. Acomputer-readable storage medium storing computer-executableinstructions for causing a computer to execute a method for use in aninformation processing apparatus capable of communicating with aprinting apparatus and a management server, the method comprising:transmitting print data to be printed by the printing apparatus to theprinting apparatus; extracting image data corresponding to thetransmitted print data; generating, from the extracted image data, datafor chasing; and transmitting the data for chasing to the managementserver, wherein the generating step comprises generating the data forchasing based on setting information to instruct a method of generatingdata for identifying content of the print data as the data for chasing.14. The computer-readable storage medium according to claim 13, whereinthe setting information includes, as the method, information of at leastone of the number of bits of the image data to be extracted, resolutionand a compressing method.
 15. The computer-readable storage mediumaccording to claim 13, wherein the data for chasing generated in thegenerating step is smaller in size than the print data corresponding tothe data for chasing.